System and methods for differentiated association service provisioning in WiFi networks

ABSTRACT

A system and methods are provided to enable differentiated association of stations (STAs) in a WiFi system and provide differentiated quality of service (QoS) based association. The embodiments include categorizing STAs that share a channel of the WiFi network into different association priority classes, wherein the STAs with higher association priority classes wait for shorter times before starting association with an access point (AP) over the shared channel. The association priority classes are assigned by the AP or the WiFi network and signaled to the STAs. Alternatively, the association priority classes are assigned by the STAs and indicated to the AP or the WiFi network. The association priority class is determined for a STA according to traffic type, device type, subscriber type, or a random number generator.

This application claims the benefit of U.S. Provisional PatentApplication Ser. No. 61/605,520, filed on Mar. 1, 2012, and entitled“System and Method for Differentiated Association Service Provisioningin WiFi Networks,” which application is incorporated herein byreference.

TECHNICAL FIELD

The present invention relates to a system and method for wirelesscommunications, and, in particular embodiments, to a system and methodsfor differentiated association service provisioning in WiFi networks.

BACKGROUND

WiFi, also referred to as wireless local area network (WLAN), uses IEEE802.11 standard technologies as its air interface. With increasednetwork capacity and advances in communication technologies, IEEE 802.11or WiFi systems are expected to support a larger number of stations(STAs). Accordingly, access points (APs) should be capable of handling alarger number of communication requests simultaneously, e.g., whenmobile devices enter or leave the WiFi domains. For example, in a trainstation, when the train stops, many WiFi users that are video streamingor browsing the internet may come out from the train at the same timeand try to associate with the AP in the train station to continue theirvideo streaming or Internet browsing. In another example, multiple smartmeters in a power outage area may transmit a ‘last gasp’ notificationmessage to alert the distributor to their loss of power. After a longpower outage, devices including smart meters may also try tore-associate with an AP at about the same time. In a WLAN, acommunication channel can be shared by multiple STAs. However, a largenumber of simultaneous communications can cause collisions in the sharedchannel and result in a long channel access delay. An overly long accessdelay may cause more energy consumption in the mobile devices andjeopardize the quality of service (QoS) provisioning of differentservices on different STAs. Therefore, there is a need to considerQoS-aware network association in a WiFi system.

SUMMARY OF THE INVENTION

In one embodiment, a method for providing differentiated association ina WiFi network includes assigning different association priority classesto a plurality of stations (STAs) that share a channel of the WiFinetwork, wherein the STAs with higher association priority classes waitfor shorter times before starting association with an AP over a sharedchannel.

In another embodiment, a method for providing differentiated associationin a WiFi network includes determining, at a STA, an associationpriority class for the STA, entering a sleep mode for a duration timecorresponding to the determined association priority class, and startingan association procedure between the STA and an access point (AP) of theWiFi network after the duration time ends.

In another embodiment, an AP component configured to supportdifferentiated association in a WiFi network includes a processor and acomputer readable storage medium storing programming for execution bythe processor. The programming includes instructions to assign differentassociation priority classes to a plurality of STAs that share a channelof the WiFi network, wherein STAs of higher association priority classeswait for a shorter time before attempting association with an AP over ashared channel.

In yet another embodiment, a STA configured to support differentiatedassociation in a WiFi system includes a processor and a computerreadable storage medium storing programming for execution by theprocessor. The programming includes instructions to enter a sleep modefor a duration time corresponding to an association priority classassigned to the STA, and start an association procedure between the STAand an AP of the WiFi network after the duration time ends.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention, and theadvantages thereof, reference is now made to the following descriptionstaken in conjunction with the accompanying drawing, in which:

FIG. 1 illustrates a distributed channel access (DCA) scheme;

FIG. 2 illustrates a network link association and authenticationprocedure;

FIG. 3 illustrates an embodiment method to provide QoS basedassociation;

FIG. 4 is a block diagram of a processing system that can be used toimplement various embodiments.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

The making and using of the presently preferred embodiments arediscussed in detail below. It should be appreciated, however, that thepresent invention provides many applicable inventive concepts that canbe embodied in a wide variety of specific contexts. The specificembodiments discussed are merely illustrative of specific ways to makeand use the invention, and do not limit the scope of the invention.

In an 802.11 WLAN, a communication channel with an AP can be shared bymultiple STAs coordinated by a distributed channel access function,referred to as a distributed coordination function (DCF). The DCF isbased on a carrier sense multiple access with collision avoidance(CSMA/CA) mechanism. The DCF uses both physical and virtual carriersense functions to determine the state of the channel. The physicalcarrier sense resides in the physical layer (PHY) and uses energydetection and preamble detection to determine whether the channel isbusy. The virtual carrier sense resides in the media access controllayer (MAC) and uses reservation information, e.g., in a Duration fieldof a MAC header, which indicates the impeding use of the wirelesschannel. The wireless channel generally is determined to be idle (notbusy) when both the physical and virtual carrier sense mechanismsindicate it to be so.

FIG. 1 shows a distributed channel access (DCA) scheme 100 for a WiFi or802.11 WLAN system. The scheme 100 involves a plurality of STAs (e.g.,STA1, STA2, STA3, and STA4) that share a channel to transmit their dataframes, e.g., to an AP. A STA with a data frame for transmission firstperforms a clear channel assessment (CCA) by sensing the wirelesschannel for a fixed duration, referred to as a DCF inter-frame space(DIFS). If the wireless channel is busy with a data frame transmissionof another STA, then the sensing STA waits until the channel remainsidle for a DIFS period of time. For example, after transmitting a dataframe 110, STA1 waits for a DIFS period of time during which the channelremains idle before attempting to transmit a second data frame over thechannel.

After waiting for a DIFS, the STA waits further for a “backoff” periodbefore attempting to transmit another frame if the channel is sensedbusy during DIFS This can be implemented by a backoff timer thatdecreases by one time unit at a time after detecting the channel to beidle (free of data frame transmission), until the backoff timer reacheszero. During the backoff time, the timer is paused whenever the channelis sensed busy. For example, STA1 starts the backoff timer when thechannel becomes idle for a DIFS. In other words, STA1 defers startingthe backoff time until the end of the transmission of frame 120 fromSTA2. After starting the backoff time, STA1 pauses the timer during thebackoff time when a new data frame 130 is transmitted by STA4 on thechannel. When the channel becomes idle again for a DIFS time duration,the STA restarts the timer to continue decreasing the remaining backofftime. For example, STA1 continues decreasing the backoff time after thedata frame 130 is transmitted, but pauses the timer again when anotherdata frame 140 from STA2 is detected on the channel, and resumes thetimer after a DIFS duration from completing data frame 140 transmission.When the backoff timer reaches zero, the STA starts transmitting itsdata frame if the channel is idle. For example, SAT1 transmits anotherdata frame 150 after the remaining backoff time reaches zero and noother data frame is detected on the channel.

FIG. 2 illustrates a network link association and authenticationprocedure 200 according to IEEE 802.11. The procedure is establishedbetween a STA 210 and an AP 220, for example between a mobile device anda WiFi modem. The STA 210 first sends a probe request 201, which can beintercepted by the AP 220. Upon receiving a probe response 202 from theAP 220, the STA 210 transmits an authentication request 203 to the AP220. The AP 220 then authenticates the STA 210 or forwards the requestto an authentication server (not shown), and sends back anauthentication response 204 to the STA 210. After authentication iscompleted, the STA 210 can initiate network association by a handshakingprocess with the AP 220, via association request 205 and response 206message exchanges. In some scenarios, the association procedure 200 canskip the probe request 201/response 202 exchange if the necessaryinformation is broadcasted in a beacon from the PA 220 andreceived/decoded by the STA 210.

In real network scenarios, when a large number of devices attemptnetwork association in a burst manner (e.g., at about the same time),not all flows can successfully associate with the AP during a certaintime interval due to the limited capacity of the network, such ascontention on a shared channel. In such cases, it is important to ensurethat higher priority devices can associate first with the AP. A systemand methods are provided herein for achieving QoS-aware networkassociation, e.g., to provision differentiated services for STAscarrying different types of applications in a WiFi system. The termassociation is used to indicate the initiation and authentication ofSTAs with an AP to access a WiFi network and begin WiFi communications,such as in the procedure 200. The term association used herein alsoincludes similar actions, such as re-association of STAs with an AP orhandover of STAs between APs or networks. The embodiment methods andschemes described below and applied to such association actions can alsobe similarly used for other suitable functions, such as emergencysignaling.

An 802.11 network may comprise different types of STAs with differentapplications. For instance, some of the STAs may include sensor devices,e.g., temperature sensors, smoke sensors, and/or electrical meters,while other STAs may include offloading devices, such as smart phones,laptops, and/or computer tablets. The sensor devices may be designed forsome applications with relatively high QoS requirements. For example,smart meters record the consumed electric energy and transmit therecorded data periodically. However, when the smart meters detect apower outage, the meters need to transmit a ‘last gasp’ message (to theAP or network) to notify the distributor as soon as possible. Offloadingdevices can use different applications with different QoS requirements.For example, a phone call that undergoes a handover from a cellularnetwork to a WiFi network requires a minimal (pre-defined) handoverdelay to ensure call quality, while a file transfer or software updatecan tolerate relatively long delays. Due to the contention nature of the802.11 system (e.g., on the shared channel), when a large number of STAsneed to associate with the AP and not all requests can be satisfied in arelatively short time interval, providing differentiated quality ofservice association is needed to guarantee faster association for STAswith critical applications (e.g., with higher priority QoSrequirements).

In an embodiment, a system and methods are implemented to provide QoSbased association via allocation of association priority class to eachWiFi device. The embodiment system includes categorizing the STAs into anumber N of classes of association priorities. For instance, 4 classesmay be considered, including a first class that represents devices thatrequire fast association, such as a phone in a handover procedure(between APs or between a cellular network and a WiFi network) or asensor device carrying critical messages, e. g. a ‘last gasp’notification or a gas leakage alarm. The classes may include a secondclass that represents devices which have real time interactive traffic,such as for electronic payment. A third class may represent devices thatcan tolerate a relatively longer association delay, such as smart phonessending/receiving emails or sensor devices communicating regular(non-urgent) data reports. A fourth class may represent other deviceswith best effort traffic that do not have delay requirement. Thepriority class can be determined by the applications running or carriedon the devices. If a device carries multiple types of applications, thenthe priority can be determined by the highest priority of theseapplications. In addition, when an application changes, e.g., when avoice call of a device terminates, the priority of the device is updatedaccordingly, based on the device's current applications. Alternatively,the STAs are categorized into different classes based on the STA typesor subscribers' priorities, or a random number generator. Different STAtypes or subscribers' priorities have different association priorities.The STAs can also be categorized into different classes based on anycombination of the above factors with different weights. For example,the applications can be given higher weight that then the STA types orsubscribers' priorities.

Different embodiment methods may be used to categorize the STAs. Forinstance, an AP of the system can configure the association priority ofa STA. Alternatively, a STA of the system can select an associationpriority based on its application, device type, subscriber's priority,or a random number generated by device, as described above. For example,a higher priority subscriber can have a higher priority for association.

In an embodiment method, a minimum wait duration, denoted as t_n, isassigned for each STA of class n, where n is an integer that indicates aclass of association priority, for example n=0, 1, 2, or 3 for a totalof 4 classes of association priorities. A STA of class n waits at leastt_n before proceeding to or attempting to associate with an AP (e.g., ifthe shared channel is idle). For 4 classes, for example, 4 minimum waitdurations are assigned such that t_0<t_1<t_2<t_3, where a first period[t_0, t_1] is reserved for class 0. This means that only the first orhighest association priority class can associate with an AP during thisperiod. During a subsequent period [t_1, t_2], both class 0 and class 1(the next highest association priority class) can associate with the AP.Similarly, class 0, 1, and 2 can associate with the AP during thesubsequent period [t_2, t_3], and all STAs can associate after t_3. Thetimer t_n may reside in the MAC layer of the STA and is not necessarilydependent on the accuracy of the physical time. To facilitate fastassociation, the wait duration t_0 can be set to 0, so that class 0 STAscan proceed immediately to associate with the AP.

The wait durations t_1, t_2, and t_3 can be pre-determined systemparameters, can be determined by the AP, or can be configured by theoperator or application. These parameters can be broadcasted oruni-casted by the AP to the STAs. When the parameters are determined bythe AP, the AP can adjust the parameter t_n according to the estimatednetwork situation or conditions, and broadcast the t_n for each class ofassociation priority in the beacon frame or other information elements(IEs). A STA of association class n may go to sleep and wake up afterthe corresponding duration t_n. The STA may then starts a networkassociation procedure based on a CSMA/CA mechanism, such as the scheme100. As described above, during the period [t_n−1, t_n] for n>1, one ormore classes may contend for association. In other embodiments, the STAcan use an enhanced distributed channel access (EDCA) mechanism withdifferent arbitrary inter-frame spaces (AIFSs) and contention windows(CWs) instead of CSMA/CA to further improve the differentiatedassociation services.

In another embodiment method, a differentiated backoff window is usedfor achieving QoS-aware network association. Specifically, each class isassociated with a backoff time window, denoted as W_n. For example, 4backoff time windows are assigned such that W_0<W_1<W_2<W_3 for n=4association classes. The parameters W_n can be pre-determined systemparameters, or can be determined by the AP via some broadcast messages,such as beacons or any other IEs. A STA of class n can randomly select atime t_n from the window W_n, e.g., 0≦t_n≦W_n, or t_nε[0, W_n]. The STAthen goes to sleep and wake up after t_n. In this way, statisticalpriority can be achieved for different classes. In other words, a higherpriority class has a greater probability to associate with the AP soonerthan other classes. To further improve the probability and provide astricter priority association, different random window assignmentschemes can be used. For example, STAs of class n (n≧1) can also selectt_n from [W_n−1, W_n] for n≧1, and STAs of class 0 select t_0 from [0,W_0] for n=0. In this way, a STA of a low priority class is less likelyto transmit before a STA with a high priority class. After waking up, aSTA can initiate a network association procedure based on CSMA/CA orEDCA.

In the WiFi system, a STA can be used to carry various types of trafficand the traffic itself can tolerate various delay (latency) values.Thus, the association priority, e.g., in the embodiment methods above,can be changed dynamically via requests from the application layer or atthe MAC layer via inspection of the buffered types of traffic. Forinstance, if a MAC layer detects that voice traffic packets are buffered(for voice communications), then the MAC layer can upgrade an initiallower association priority (for normal traffic) to a higher priorityaccordingly. Similarly, if low priority traffic is detected, then theMAC layer can reduce the association priority accordingly.

In another embodiment, the association priority is changed dynamicallybased on information provided by an AP. To take into account thechanging nature of traffic, the AP can override the STA associationpriority by sending a re-map between current STA priorities and newallocated priorities. The AP can notify one or more classes of STAs forassociation at different times. In a different embodiment, apseudo-random change of priority is used, where a STA uses some randomnumber generator to alter its association priority. For instance, a STAgenerates a random number to decide its association priority, orgenerates a random number and compares the number to a threshold (e.g.,provided by the operator or AP) and then decides to increase or decreasethe association priority if the random number generator is larger thanthe threshold.

In an embodiment system, the wireless network includes a plurality ofAPs operating in the same or different channels, where each AP acceptsone or more different association priorities of other APs. For instance,a first AP accepts requests with association priority 0 and 1, while asecond AP accepts request only for devices with association priority 2,3, 4, etc. This approach can offer a better match between APcharacteristics such as latency/throughput and the incoming associationrequests.

FIG. 3 shows an embodiment method 300 to provide QoS based associationvia allocation of association priority class to each WiFi device. Atstep 310, the method 300 determines the association priority class for aSTA according to traffic type, device type, subscriber type, or a randomnumber generator, as described above. At step 320, the STA goes to sleepfor a duration time corresponding to the determined association priorityclass. For instance, the STA is put in sleep mode for a minimum waitduration t_n assigned for class n or for a random time t_n selectedrandomly from a backoff time window W_n for class n. At step 330, startto associate the STA with an AP over a shared channel when the durationtime ends, e.g., using a CSMA/CA or EDCE procedure.

FIG. 4 is a block diagram of a processing system 400 that can be used toimplement various embodiments. Specific devices or UEs may utilize allof the components shown, or only a subset of the components, and levelsof integration may vary from device to device. Furthermore, a device maycontain multiple instances of a component, such as multiple processingunits, processors, memories, transmitters, receivers, etc. Theprocessing system 400 may comprise a processing unit 401 equipped withone or more input/output devices, such as a speaker, microphone, mouse,touchscreen, keypad, keyboard, printer, display, and the like. Theprocessing unit 401 may include a central processing unit (CPU) 410, amemory 420, a mass storage device 430, a video adapter 440, and an I/Ointerface 460 connected to a bus. The bus may be one or more of any typeof several bus architectures including a memory bus or memorycontroller, a peripheral bus, a video bus, or the like.

The CPU 410 may comprise any type of electronic data processor. Thememory 420 may comprise any type of system memory such as static randomaccess memory (SRAM), dynamic random access memory (DRAM), synchronousDRAM (SDRAM), read-only memory (ROM), a combination thereof, or thelike. In an embodiment, the memory 420 may include ROM for use atboot-up, and DRAM for program and data storage for use while executingprograms. In embodiments, the memory 420 is non-transitory. The massstorage device 430 may comprise any type of storage device configured tostore data, programs, and other information and to make the data,programs, and other information accessible via the bus. The mass storagedevice 430 may comprise, for example, one or more of a solid statedrive, hard disk drive, a magnetic disk drive, an optical disk drive, orthe like.

The video adapter 440 and the I/O interface 460 provide interfaces tocouple external input and output devices to the processing unit. Asillustrated, examples of input and output devices include a display 490coupled to the video adapter 440 and any combination ofmouse/keyboard/printer 470 coupled to the I/O interface 460. Otherdevices may be coupled to the processing unit 401, and additional orfewer interface cards may be utilized. For example, a serial interfacecard (not shown) may be used to provide a serial interface for aprinter.

The processing unit 401 also includes one or more network interfaces450, which may comprise wired links, such as an Ethernet cable or thelike, and/or wireless links to access nodes or one or more networks 480.The network interface 450 allows the processing unit 401 to communicatewith remote units via the networks 480. For example, the networkinterface 450 may provide wireless communication via one or moretransmitters/transmit antennas and one or more receivers/receiveantennas. In an embodiment, the processing unit 401 is coupled to alocal-area network or a wide-area network for data processing andcommunications with remote devices, such as other processing units, theInternet, remote storage facilities, or the like.

While this invention has been described with reference to illustrativeembodiments, this description is not intended to be construed in alimiting sense. Various modifications and combinations of theillustrative embodiments, as well as other embodiments of the invention,will be apparent to persons skilled in the art upon reference to thedescription. It is therefore intended that the appended claims encompassany such modifications or embodiments.

What is claimed is:
 1. A method for providing differentiated associationin a WiFi network, the method comprising: assigning differentassociation priority classes to a plurality of stations (STAs) thatshare a channel of the WiFi network, wherein the STAs with higherassociation priority classes wait for shorter times before startingassociation with an AP over a shared channel, and wherein the STAs areseparate physical devices that each communicate directly with the AP;and assigning to the STAs different minimum wait times or different timeintervals for the different association priority classes according todifferent traffic types, wherein the STAs assigned higher associationpriority classes have shorter minimum wait times or earlier timeintervals.
 2. The method of claim 1, wherein the association priorityclasses are assigned by the AP or the WiFi network and signaled to theSTAs.
 3. The method of claim 1, wherein the association priority classesare assigned by the STAs and indicated to the AP or the WiFi network. 4.The method of claim 1 further comprising assigning different backofftime windows for the STAs according to the different associationpriority classes, wherein the STAs assigned higher association priorityclasses have smaller backoff time windows.
 5. The method of claim 1,wherein the association priority classes are determined for the STAsaccording to traffic types or a highest priority application carried oneach of the STAs.
 6. The method of claim 1, wherein the associationpriority classes are determined for the STAs according to STA type orsubscriber's priority.
 7. The method of claim 1, wherein the associationpriority classes are determined by a random number generator.
 8. Themethod of claim 1, wherein the association priority classes aredetermined for the STAs according to a weighted sum of traffic type, STAtype or subscriber's priority, and generated random number.
 9. Themethod of claim 1, wherein the association priority classes include afirst class with highest priority association for STAs that need fastassociation, a second class for STAs with real time interactive traffic,a third class for STAs that tolerate longer association delays, and afourth class for STAs with best effort traffic.
 10. A method forproviding differentiated association in a WiFi network, the methodcomprising: determining, at a station (STA), an association priorityclass assigned to the STA, wherein the STA is a single physical deviceassigned a single association priority class from a plurality ofdifferent association priority classes provided by the WiFi network,wherein the different association priority classes are allocateddifferent minimum wait times or different time intervals according todifferent traffic types, and wherein higher association priority classesfrom the different association priority classes are allocated shorterminimum wait times or earlier time intervals; entering a sleep mode fora duration time corresponding to one of the different minimum wait timesor different time intervals that is allocated to the determinedassociation priority class; and starting an association procedurebetween the STA and an access point (AP) of the WiFi network after theduration time ends.
 11. The method of claim 10 further comprising:detecting, at a media access control (MAC) layer, a change of traffictype in a buffer of the STA; and initiating a change of the associationpriority class for the STA according to the change of traffic type. 12.The method of claim 10 further comprising receiving, from an accesspoint (AP), a change of association priority class for the STA accordingto changing traffic.
 13. The method of claim 10 further comprising:generating a random number at the STA; and changing the associationpriority class for the STA if the random number is above or below athreshold.
 14. The method of claim 10, wherein the association procedureis based on a carrier sense multiple access with collision avoidance(CSMA/CA) procedure.
 15. The method of claim 10, wherein the associationprocedure is an enhanced distributed channel access (EDCA) procedure.16. The method of claim 10, wherein the STA enters the sleep mode for aminimum wait duration corresponding to the association priority class ofthe STA.
 17. The method of claim 10, wherein the STA enters the sleepmode for a time interval corresponding to the association priority classof the STA.
 18. The method of claim 10, wherein the STA goes to sleepfor a random wait time within a backoff time window corresponding to theassociation priority class of the STA.
 19. The method of claim 10,wherein the STA goes to sleep for a random wait time within a differenceof a backoff time window corresponding to the association priority classof the STA and a shorter backoff time window corresponding to a higherassociation priority class.
 20. An access point (AP) componentconfigured to support differentiated association in a WiFi network, theAP comprising: a processor; and a non-transitory computer readablestorage medium storing programming for execution by the processor, theprogramming including instructions to: assign different associationpriority classes to a plurality of stations (STAs) that share a channelof the WiFi network, and assign different minimum wait times ordifferent time intervals to the STAs with the different associationpriority classes according to different traffic types, wherein STAs ofhigher association priority classes wait for a shorter time beforeattempting association with an AP over a shared channel, and wherein theSTAs are separate physical devices that each communicate directly withthe AP.
 21. The AP of claim 20, wherein the programming includes furtherinstructions to change the assigned association priority classes to theSTAs according to traffic or network conditions.
 22. A station (STA)configured to support differentiated association in a WiFi system, theSTA comprising: a processor; and a non-transitory computer readablestorage medium storing programming for execution by the processor, theprogramming including instructions to: enter a sleep mode for a durationtime corresponding to an association priority class assigned to the STA,wherein the STA is a single physical device assigned a singleassociation priority class from a plurality of different associationpriority classes provided by the WiFi system, wherein the differentassociation priority classes are allocated different minimum wait timesor different time intervals according to different traffic types,wherein higher association priority classes from the differentassociation priority classes are allocated shorter minimum wait times orearlier time intervals, and wherein the duration time corresponds to oneof the different minimum wait times or different time intervals that isallocated to the association priority class assigned to the STA; andstart an association procedure between the STA and an access point (AP)of the WiFi system after the duration time ends.
 23. The STA of claim22, wherein the programming includes further instructions to: detect, ata media access control (MAC) layer, a change of traffic type in a bufferof the STA; and initiate a change of the association priority class forthe STA according to the change of traffic type.
 24. The STA of claim22, wherein the programming includes further instructions to: generate arandom number at the STA; and change the association priority class forthe STA if the random number is above or below a threshold.